関係代数の SQL での実装
関係代数 (relational algebra) の SQL での実装
Edgar F. Codd の 『The Relational Model for Database Management』 で定義されている
選択
射影
結合
FROM 句で JOIN を指定
交差
全く同じ列を持つ 2 つのテーブルで実行する
結果は、該当する列の値が全て一致している行
DB2、SQL Server、Oracle、PostgreSQL はサポートしている
Microsoft Access と MySQL はサポートしていないが、内部結合を使って同じ結果を得ることは可能
直積 (デカルト積)
FROM 句で JOIN を使わずにテーブルを指定
和
UNION キーワード
商
割られる側のテーブルから、割る側のテーブルのメンバーを全て含んでいる行を返す
商演算をサポートしているデータベースシステムは存在しないが、エミュレートはできる
差
EXCEPT キーワードか MINUS キーワード
MySQL と Microsoft Access ではサポートされていないが、OUTER JOIN して NULL の評価をすることで代替可能
参考文献
Effective SQL